bitkeeper revision 1.1280 (42546436AjH1RKAsscWgqxhnCsGwyg)
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Wed, 6 Apr 2005 22:35:34 +0000 (22:35 +0000)
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Wed, 6 Apr 2005 22:35:34 +0000 (22:35 +0000)
Get the x86/64 build working again.
Signed-off-by: Keir Fraser <keir@xensource.com>
xen/arch/x86/audit.c
xen/arch/x86/shadow.c

index 5faca40f5fda0aca5240786beaac2918e5992a7c..8df6a962bf2bdc575e3db611bc40e6353d62aaed 100644 (file)
@@ -30,8 +30,7 @@
 #include <asm/page.h>
 #include <asm/flushtlb.h>
 
-// XXX SMP bug -- these should not be statics...
-//
+/* XXX SMP bug -- these should not be statics... */
 static int ttot=0, ctot=0, io_mappings=0, lowmem_mappings=0;
 static int l1, l2, oos_count, page_count;
 
@@ -538,10 +537,14 @@ int audit_adjust_pgtables(struct domain *d, int dir, int noisy)
         }
     }
 
+#ifdef __i386__
     if ( shadow_mode_external(d) )
         l2limit = L2_PAGETABLE_ENTRIES;
     else
         l2limit = DOMAIN_ENTRIES_PER_L2_PAGETABLE;
+#else
+    l2limit = 0; /* XXX x86/64 XXX */
+#endif
 
     adjust_for_pgtbase();
 
@@ -553,7 +556,6 @@ int audit_adjust_pgtables(struct domain *d, int dir, int noisy)
         adjust_shadow_tables();
     }
 
-    //printk("d->shared_info=%p __pa()=%p\n", d->shared_info, __pa(d->shared_info));
     adjust(virt_to_page(d->shared_info), 1);
 
     return errors;
index 1d317f343386e3d0056ac9f0c456ed9477cabd4d..563a4bfdde2686735ce7f6866b27a42780cc4789 100644 (file)
@@ -322,10 +322,14 @@ free_shadow_hl2_table(struct domain *d, unsigned long smfn)
     l1_pgentry_t *hl2 = map_domain_mem(smfn << PAGE_SHIFT);
     int i, limit;
 
+#ifdef __i386__
     if ( shadow_mode_external(d) )
         limit = L2_PAGETABLE_ENTRIES;
     else
         limit = DOMAIN_ENTRIES_PER_L2_PAGETABLE;
+#else
+    limit = 0; /* XXX x86/64 XXX */
+#endif
 
     for ( i = 0; i < limit; i++ )
     {
@@ -604,9 +608,11 @@ static void alloc_monitor_pagetable(struct exec_domain *ed)
     mpl2e = (l2_pgentry_t *) map_domain_mem(mmfn << PAGE_SHIFT);
     memset(mpl2e, 0, PAGE_SIZE);
 
+#ifdef __i386__ /* XXX screws x86/64 build */
     memcpy(&mpl2e[DOMAIN_ENTRIES_PER_L2_PAGETABLE], 
            &idle_pg_table[DOMAIN_ENTRIES_PER_L2_PAGETABLE],
            HYPERVISOR_ENTRIES_PER_L2_PAGETABLE * sizeof(l2_pgentry_t));
+#endif
 
     mpl2e[l2_table_offset(PERDOMAIN_VIRT_START)] =
         mk_l2_pgentry((__pa(d->arch.mm_perdomain_pt) & PAGE_MASK) 
@@ -1306,10 +1312,14 @@ shadow_hl2_table(struct domain *d, unsigned long gpfn, unsigned long gmfn,
 
     hl2 = map_domain_mem(hl2mfn << PAGE_SHIFT);
 
+#ifdef __i386__
     if ( shadow_mode_external(d) )
         limit = L2_PAGETABLE_ENTRIES;
     else
         limit = DOMAIN_ENTRIES_PER_L2_PAGETABLE;
+#else
+    limit = 0; /* XXX x86/64 XXX */
+#endif
 
     memset(hl2, 0, limit * sizeof(l1_pgentry_t));
 
@@ -2712,10 +2722,14 @@ int check_l2_table(
                (__pa(d->arch.mm_perdomain_pt) | __PAGE_HYPERVISOR));
     }
 
+#ifdef __i386__
     if ( shadow_mode_external(d) )
         limit = L2_PAGETABLE_ENTRIES;
     else
         limit = DOMAIN_ENTRIES_PER_L2_PAGETABLE;
+#else
+    limit = 0; /* XXX x86/64 XXX */
+#endif
 
     /* Check the whole L2. */
     for ( i = 0; i < limit; i++ )
@@ -2773,10 +2787,14 @@ int _check_pagetable(struct exec_domain *ed, char *s)
     spl2e = (l2_pgentry_t *) map_domain_mem( smfn << PAGE_SHIFT );
 
     /* Go back and recurse. */
+#ifdef __i386__
     if ( shadow_mode_external(d) )
         limit = L2_PAGETABLE_ENTRIES;
     else
         limit = DOMAIN_ENTRIES_PER_L2_PAGETABLE;
+#else
+    limit = 0; /* XXX x86/64 XXX */
+#endif
 
     for ( i = 0; i < limit; i++ )
     {